perm filename BLOCKX.HDR[11,ALS] blob sn#083844 filedate 1974-01-28 generic text, type T, neo UTF8
00010	EXTERNAL PROCEDURE SPOOL(STRING S;INTEGER IOCHAN,FLAGS);
00020	INTEGER DATE,TIME;
00030	DEFINE GETIME="BEGIN DATE←CALL(0,""DATE""); TIME←CALL(0,""TIMER"")%60; END";
00040	
00050	INTERNAL STRING PROCEDURE DATIM; ⊃ Returns string equivalent to monitor DAYTIME command;
00060		BEGIN INTEGER DAY,YR,HRS,MIN,SEC;
00070			PRELOAD_WITH "JAN","FEB","MAR","APR","MAY","JUN","JUL","AUG",
00080					"SEP","OCT","NOV","DEC";
00090			OWN STRING ARRAY MONTHS[0:11];
00100		DAY←(DATE MOD 31)+1;DATE←DATE%31;
00110		YR←1964+DATE%12;SEC←TIME MOD 60;TIME←TIME%60;MIN←TIME MOD 60;HRS←TIME%60;
00120		SETFORMAT(-2,0);
00130		RETURN(CVS(DAY)&"-"&MONTHS[DATE MOD 12]&"-"&CVS(YR)&"   "&CVS(HRS)&CVS(MIN)&":"&CVS(SEC));
00140		END "DATIM";
00150	INTERNAL STRING PROCEDURE DATIME;BEGIN GETIME;RETURN(DATIM);END;
00999	
     

00005	DEFINE CR="'15",LF="'12",CRLF="CR&LF",TB="'11";
00010	DEFINE TABNUM="16",INSIZ="24",TABSIZ="256";
00020	INTERNAL INTEGER ARRAY PHLIST,HLIST[00:63];
00040	INTERNAL INTEGER ARRAY FLIST[0:35];
00050	INTERNAL INTEGER ARRAY INNAM[0:INSIZ];
00060	INTERNAL INTEGER ARRAY NAMES[0:TABNUM];
00070	INTERNAL INTEGER ARRAY PARENT[0:TABNUM];
00080	INTERNAL INTEGER ARRAY PARENN[0:TABNUM];
00090	INTERNAL INTEGER ARRAY GATE[0:TABNUM];
00100	INTERNAL INTEGER ARRAY IN1[0:TABNUM];
00110	INTERNAL INTEGER ARRAY IN2[0:TABNUM];
00120	INTERNAL INTEGER ARRAY IN3[0:TABNUM];
00130	INTERNAL INTEGER ARRAY IN4[0:TABNUM];
00140	INTERNAL INTEGER ARRAY IN1N[0:TABNUM];
00150	INTERNAL INTEGER ARRAY IN2N[0:TABNUM];
00160	INTERNAL INTEGER ARRAY IN3N[0:TABNUM];
00170	INTERNAL INTEGER ARRAY IN4N[0:TABNUM];
00180	INTERNAL INTEGER ARRAY OUT1[0:TABNUM];
00190	INTERNAL INTEGER ARRAY OUT2[0:TABNUM];
00200	INTERNAL INTEGER ARRAY OUT3[0:TABNUM];
00210	INTERNAL INTEGER ARRAY OUT4[0:TABNUM];
00220	INTERNAL INTEGER ARRAY LRN1[0:TABNUM];
00230	INTERNAL INTEGER ARRAY LRN2[0:TABNUM];
00240	INTERNAL INTEGER ARRAY LRN3[0:TABNUM];
00250	INTERNAL INTEGER ARRAY LRN4[0:TABNUM];
00255	INTERNAL INTEGER ARRAY LEVEL[0:TABNUM];
00256	INTERNAL INTEGER ARRAY CMAX[0:TABNUM];
00257	INTERNAL INTEGER ARRAY START[0:TABNUM];
00258	INTERNAL INTEGER ARRAY STOP[0:TABNUM];
00260	INTERNAL INTEGER ARRAY OUTPUT[0:TABNUM];
00270	INTERNAL INTEGER ARRAY INCNT,INSUB,INDIV,INRAW,INDAT[0:INSIZ];
00280	
00290	
00300	PROCEDURE HEADIN;
00310	BEGIN "HEADIN"  INTEGER CHAN1,EOF;
00320	CHAN1←GETCHAN;
00330	 CLOSE(CHAN1);
00340	  OPEN(CHAN1,"DSK",'10,10,0,0,0,EOF);
00350	  LOOKUP(CHAN1,"TABHED.DAT",0);
00360	ARRYIN(CHAN1,INNAM[0],INSIZ);
00370	ARRYIN(CHAN1,FLIST[0],36);
00380	ARRYIN(CHAN1,PHLIST[0],64);
00390	ARRYIN(CHAN1,HLIST[0],64);
00400	ARRYIN(CHAN1,NAMES[0],TABNUM);
00410	ARRYIN(CHAN1,PARENT[0],TABNUM);
00415	ARRYIN(CHAN1,PARENN[0],TABNUM);
00420	ARRYIN(CHAN1,GATE[0],TABNUM);
00430	ARRYIN(CHAN1,IN1[0],TABNUM);
00440	ARRYIN(CHAN1,IN2[0],TABNUM);
00450	ARRYIN(CHAN1,IN3[0],TABNUM);
00460	ARRYIN(CHAN1,IN4[0],TABNUM);
00470	ARRYIN(CHAN1,OUT1[0],TABNUM);
00480	ARRYIN(CHAN1,OUT2[0],TABNUM);
00490	ARRYIN(CHAN1,OUT3[0],TABNUM);
00500	ARRYIN(CHAN1,OUT4[0],TABNUM);
00510	ARRYIN(CHAN1,LRN1[0],TABNUM);
00520	ARRYIN(CHAN1,LRN2[0],TABNUM);
00530	ARRYIN(CHAN1,LRN3[0],TABNUM);
00540	ARRYIN(CHAN1,LRN4[0],TABNUM);
00550	ARRYIN(CHAN1,LEVEL[0],TABNUM);
00560	
00570	CLOSE(CHAN1);
00580	RELEASE(CHAN1);
00590	END "HEADIN";
00600	
00610